/******************************************************************************
 * Copyright (C) 2011 ShenZhen ComTop Information Technology Co.,Ltd
 * All Rights Reserved.
 * 本软件为深圳康拓普开发研制。未经本公司正式书面同意，其他任何个人、团体不得使用、
 * 复制、修改或发布本软件.
 *****************************************************************************/

package com.code.common.excel.officeexport.excel.model;

import java.io.Serializable;

import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;

/**
 * 
 * 导出单元格VO
 *
 * @author  李鹏
 * @since   1.0
 * @version 2013-3-20 李鹏
 */
public class ExportFieldVO implements Serializable {

    /**  */
    private static final long serialVersionUID = -4386916163113734893L;

    /** 单元格内容 */
    private String value = null;

    /** 列位置 */
    private short xPosition = 0;

    /** 行位置 */
    private int yPosition = 0;

    /** 横向占用单元格数 */
    private int mergeX = 1;

    /** 纵向占用单元格数 */
    private int mergeY = 1;

    /** 单元格宽度 */
    private String width = null;

    /** 对齐方式 */
    private String align = "centre";

    /** 颜色 */
    private short color = HSSFFont.COLOR_NORMAL;

    /** 单元格样式 */
    private HSSFCellStyle style = null;

    /**
     * @return 获取 横向占用单元格数
     */
    public int getMergeX() {
        return mergeX;
    }

    /**
     * @param mergeX 设置横向占用单元格数
     */
    public void setMergeX(int mergeX) {
        this.mergeX = mergeX;
    }

    /**
     * @return 获取纵向占用单元格数
     */
    public int getMergeY() {
        return mergeY;
    }

    /**
     * @param mergeY 设置 获取纵向占用单元格数
     */
    public void setMergeY(int mergeY) {
        this.mergeY = mergeY;
    }

    /**
     * @return 获取单元格内容
     */
    public String getValue() {
        return value;
    }

    /**
     * @param value 设置 单元格内容
     */
    public void setValue(String value) {
        this.value = value;
    }

    /**
     * @return 获取列位置
     */
    public short getXPosition() {
        return xPosition;
    }

    /**
     * @param position 设置列位置
     */
    public void setXPosition(short position) {
        xPosition = position;
    }

    /**
     * @return 获取行位置
     */
    public int getYPosition() {
        return yPosition;
    }

    /**
     * @param position 设置行位置
     */
    public void setYPosition(int position) {
        yPosition = position;
    }

    /**
     * @return 获取对齐方式
     */
    public String getAlign() {
        return align;
    }

    /**
     * @param align 设置对齐方式
     */
    public void setAlign(String align) {
        this.align = align;
    }

    /**
     * @return 获取单元格宽度
     */
    public String getWidth() {
        return width;
    }

    /**
     * @param width 设置单元格宽度
     */
    public void setWidth(String width) {
        this.width = width;
    }

    /**
     * @return 获取单元格样式
     */
    public HSSFCellStyle getStyle() {
        return style;
    }

    /**
     * @param style 设置单元格样式
     */
    public void setStyle(HSSFCellStyle style) {
        this.style = style;
    }

    /**
     * @return 获取颜色
     */
    public short getColor() {
        return color;
    }

    /**
     * @param color 设置颜色
     */
    public void setColor(short color) {
        this.color = color;
    }

    /*
     * toString method
     */
    @Override
    public String toString() {
        StringBuffer sbResult = new StringBuffer(512);
        sbResult.append("ExportFieldVO[");
        sbResult.append(super.toString());
        sbResult.append("\n    value=").append(this.value);
        sbResult.append("\n    xPosition=").append(this.xPosition);
        sbResult.append("\n    yPosition=").append(this.yPosition);
        sbResult.append("\n    mergeX=").append(this.mergeX);
        sbResult.append("\n    mergeY=").append(this.mergeY);
        sbResult.append("\n    width=").append(this.width);
        sbResult.append("\n    align=").append(this.align);
        sbResult.append("\n    color=").append(this.color);
        sbResult.append("\n    style=").append(this.style);
        sbResult.append("\n]");
        return sbResult.toString();
    }
}
